import router from './router'
import store from './store'
import NProgress from 'nprogress' // 引入一份进度条插件
import 'nprogress/nprogress.css' // 引入进度条样式
// 路由前置守卫

// 白名单
const WHITE_LIST = ['/login', '/404']

// GOOD
router.beforeEach((to, from, next) => {
  NProgress.start()
  // 如果有token
  if (store.getters.token) {
    // 如果进入登录页
    if (to.path === '/login') {
      // 引导到主页
      next('/')
      NProgress.done()
    } else {
      // 发送获取用户基本信息的请求
      store.dispatch('user/getUserInfo')
      next()
    }
  } else {
    if (WHITE_LIST.includes(to.path)) {
      next()
    } else {
      next('login')
      NProgress.done()
    }
  }
})

// 后置守卫
router.afterEach((to, from) => {
  NProgress.done()
})
